package sv.ues.fia.adminperfildocentes;

import java.util.ArrayList;
import java.util.HashMap;

import sv.ues.fia.adminperfildocentes.adapter.ListExperienciaAdapter;
import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.EditText;
import android.widget.ListView;

public class ExperienciaDocentePerfilActivity extends Activity {
	
	ListExperienciaAdapter mAdapter;
	ControlDB BDhelper;
	ListView lvExperiencia;
	EditText editbuscar;
	String id;
	ArrayList<HashMap<String, String>> array_sort = new ArrayList<HashMap<String, String>>();
	ArrayList<HashMap<String, String>> listarExperienciaDoc = new ArrayList<HashMap<String, String>>();
	int textlength =0;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_experiencia_docente_perfil);
		BDhelper = new ControlDB(this);
		Bundle bundle = getIntent().getExtras();
		id = bundle.getString("idDocente");
		
		listarExperienciaDoc = BDhelper.listarExperienciaDocente(id);
		lvExperiencia = (ListView) findViewById(R.id.listviewexperiencia);
		
		mAdapter = new ListExperienciaAdapter(this,listarExperienciaDoc);
		// Establecemos el adapter
		lvExperiencia.setAdapter(mAdapter);
			
		// registramos el menu
		registerForContextMenu(lvExperiencia);
		
			
		//filtrado con el edit
		editbuscar = (EditText) findViewById(R.id.editBusqueda);
		editbuscar.addTextChangedListener(new TextWatcher() {
			@Override
		    public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) {
		        // When user changed the Text
				 textlength = editbuscar.getText().length();
	             array_sort.clear();
	                
	                for (int i = 0; i < listarExperienciaDoc.size(); i++) {
	                	String itemnom = mAdapter.getItem(i);
	                	String itemid = String.valueOf(mAdapter.getItemId(i));
	                	String itemCargo = mAdapter.getItemCargo(i);
	                	String itemPeriodo = mAdapter.getItemPeriodo(i);
	                	int longitud = itemCargo.length();
	                    if (textlength <= longitud) {
	                        if (editbuscar.getText().toString().equalsIgnoreCase((String) itemCargo.subSequence(0, textlength))) {
	                        	HashMap<String, String> actual = new HashMap<String, String>();
	                        	actual.put("IDEXPERIENCIA", itemid);
	                			actual.put("DENOMINACION_SOCIAL", itemnom);
	                			actual.put("NOMBRE", itemCargo);
	                			actual.put("PERIODO", itemPeriodo);
	                            array_sort.add(actual);
	                        }
	                    }
	                }
	                 
	                lvExperiencia.setAdapter(new  ListExperienciaAdapter(ExperienciaDocentePerfilActivity.this, array_sort));
		    }
		    @Override
		    public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
		            int arg3) { }
		    @Override
		    public void afterTextChanged(Editable arg0) {}
		  });
	}

}
